//
// Created by 吴喆 on 2020/3/16.
//

#ifndef SUMMER_DIRECTIONSTATEMACHINE_H
#define SUMMER_DIRECTIONSTATEMACHINE_H

#include "../../engine/Playable.h"

class DirectionStateMachine : public StateMachine {
public:
    DirectionStateMachine();
private:
};

class RightState : public PlayableState {
public:
    PlayableState *handleInput(Playable &playable, KeyEvent *event) override;

    PlayableState *update(Playable &playable) override;

    void enter(Playable &playable) override;
};

class LeftState : public PlayableState {
public:
    PlayableState *handleInput(Playable &playable, KeyEvent *event) override;

    PlayableState *update(Playable &playable) override;

    void enter(Playable &playable) override;
};

#endif //SUMMER_DIRECTIONSTATEMACHINE_H
